#ifndef PHYSIC_H
#define PHYSIC_H

#include "ToolBox/vectorf.h"
#include <stack>

class Physic
{
    public:

    Physic(Vectorf * obj);

    void Do();
    int AddAcceleration(Vectorf * vec);
    int AddAccelerationc(Vectorf *vec, float coef);

    int gravity;
    float velocityMax;
    int frottement;
    int SetFrottement();
    std::stack<Vectorf *> pile; /*!< Pile contenant toutes les valeurs d'accélération additionné */
    float valGravity;           /*!< Valeur de la gravité    */

    Vectorf * objectPosition;   /*!< Position de l'objet dans la scène */
    Vectorf * velocity;         /*!< Vecteur vitesse de l'objet */
    Vectorf * barycentre;
    Vectorf isoBarycentre;  /*!< Coordoonnées du sommet représentant l'isoBarycentre de la forme	*/

    int UnsetFrottement();

    int signe;
    float delta;    //  temps écoulé depuis la dernière frame
};

#endif // PHYSIC_H
